cmake_minimum_required(VERSION 3.15)
project(sphinx C)

set(CMAKE_C_STANDARD 99)

# 导入的dll文件目录
link_directories(src/Lib/11.2.0.1.0_Production)

# 需要编译的文件
add_executable(sphinx_nn_main
        ############################################## 入口函数 ##############################################
        src/Source/main/nn_main.c
        ##############################################  源文件 ##############################################
        src/Source/constant/filename.c
        src/Source/constant/path.c
        src/Source/constant/env.c
        src/Source/domain/bp_info.c
        src/Source/domain/bp_model.c
        src/Source/domain/database_info.c
        src/Source/domain/stock_transaction_data_list_result.c
        src/Source/domain/knn_dataset.c
        src/Source/manager/config_manager.c
        src/Source/manager/function_manager.c
        src/Source/manager/matrix_manager.c
        src/Source/manager/picture_manager.c
        src/Source/manager/stock_transaction_data_manager.c
        src/Source/model/stock_transaction_data.c
        src/Source/package/package.c
        src/Source/task/knn_task.c
        src/Source/task/nn_task.c
        src/Source/util/array_util.c
        src/Source/util/char_util.c
        src/Source/util/config_util.c
        src/Source/util/double_util.c
        src/Source/manager/file_manager.c
        src/Source/manager/log_manager.c
        src/Source/handler/knn_handler.c
        ##############################################  头文件 ##############################################
        src/Include/constant/filename.h
        src/Include/constant/path.h
        src/Include/constant/knn_info.h
        src/Include/constant/env.h
        src/Include/domain/bp_info.h
        src/Include/domain/bp_model.h
        src/Include/domain/database_info.h
        src/Include/domain/stock_transaction_data_list_result.h
        src/Include/domain/knn_dataset.h
        src/Include/manager/config_manager.h
        src/Include/manager/function_manager.h
        src/Include/manager/matrix_manager.h
        src/Include/manager/picture_manager.h
        src/Include/manager/stock_transaction_data_manager.h
        src/Include/model/stock_transaction_data.h
        src/Include/package/package.h
        src/Include/proc/find_stock_transaction_data.h
        src/Include/task/knn_task.h
        src/Include/task/nn_task.h
        src/Include/util/array_util.h
        src/Include/util/char_util.h
        src/Include/util/config_util.h
        src/Include/util/double_util.h
        src/Include/manager/file_manager.h
        src/Include/manager/log_manager.h
        src/Include/handler/knn_handler.h
        ##############################################  测试文件 ##############################################
        src/Source/constant/knn_info.c)

add_executable(sphinx_knn_main
        ############################################## 入口函数 ##############################################
        src/Source/main/knn_main.c
        ##############################################  源文件 ##############################################
        src/Source/constant/filename.c
        src/Source/constant/path.c
        src/Source/constant/knn_info.c
        src/Source/constant/env.c
        src/Source/domain/bp_info.c
        src/Source/domain/bp_model.c
        src/Source/domain/database_info.c
        src/Source/domain/stock_transaction_data_list_result.c
        src/Source/domain/knn_dataset.c
        src/Source/manager/config_manager.c
        src/Source/manager/function_manager.c
        src/Source/manager/matrix_manager.c
        src/Source/manager/picture_manager.c
        src/Source/manager/file_manager.c
        src/Source/manager/log_manager.c
#        src/Source/manager/stock_transaction_data_manager.c
        src/Source/model/stock_transaction_data.c
        src/Source/package/package.c
#        src/Source/proc/find_stock_transaction_data.c
        src/Source/task/knn_task.c
#        src/Source/task/nn_task.c
        src/Source/util/array_util.c
        src/Source/util/char_util.c
        src/Source/util/config_util.c
        src/Source/util/double_util.c
        src/Source/handler/knn_handler.c
        ##############################################  头文件 ##############################################
        src/Include/constant/filename.h
        src/Include/constant/path.h
        src/Include/constant/knn_info.h
        src/Include/constant/env.h
        src/Include/domain/bp_info.h
        src/Include/domain/bp_model.h
        src/Include/domain/database_info.h
        src/Include/domain/stock_transaction_data_list_result.h
        src/Include/domain/knn_dataset.h
        src/Include/manager/config_manager.h
        src/Include/manager/function_manager.h
        src/Include/manager/matrix_manager.h
        src/Include/manager/picture_manager.h
        src/Include/manager/file_manager.h
        src/Include/manager/log_manager.h
#        src/Include/manager/stock_transaction_data_manager.h
        src/Include/model/stock_transaction_data.h
        src/Include/package/package.h
#        src/Include/proc/find_stock_transaction_data.h
        src/Include/task/knn_task.h
#        src/Include/task/nn_task.h
        src/Include/util/array_util.h
        src/Include/util/char_util.h
        src/Include/util/config_util.h
        src/Include/util/double_util.h
        src/Include/handler/knn_handler.h
        ##############################################  测试文件 ##############################################
        src/Test/util/config_util_test.c)

# 指定link_directories目录下的oci.dll文件
target_link_libraries(sphinx_nn_main oci.dll)
target_link_libraries(sphinx_knn_main oci.dll)
